/** 
 期权管理
*/
import React, { PureComponent } from 'react';
import 'moment/locale/zh-cn';
import ShareOptionManage from './shareOptionManage/shareOptionManage';
import ShareOption from './shareOption/shareOption';

class ShareOptionMain extends PureComponent {
  constructor(props) {
    super(props);
    this.state = {
      shareOptionVisible: false, // 簿记页面的显示隐藏
      isRefresh: false, // 簿记页面返回时是否需要刷新列表
      operateType: '', // 操作类型 （1-新增 2-复用 3-编辑）
      BundleId: '',
    };
  }

  componentDidMount() {}

  UNSAFE_componentWillReceiveProps(nextProps) {}
  // 簿记页面显示与隐藏
  showShareOption = (msg, type, id) => {
    if (type == '1') {
      // 新增，不需要传bundleId
      this.setState({
        shareOptionVisible: msg,
        operateType: type,
      });
    } else {
      this.setState({
        shareOptionVisible: msg,
        operateType: type,
        bundleId: id,
      });
    }
  };
  // 簿记页面的onBack事件
  onBack = (msg) => {
    this.setState({
      isRefresh: msg,
    });
    if (msg) {
      this.$ShareOptionMange.getShareData();
    }
  };
  render() {
    const { shareOptionVisible, operateType, bundleId } = this.state;
    return (
      <div style={{ height: '100%' }}>
        {/* 显示期权管理列表页 */}
        <div style={{ display: shareOptionVisible ? 'none' : 'block' }}>
          <ShareOptionManage
            showShareOption={this.showShareOption}
            onRef={(ref) => {
              this.$ShareOptionMange = ref;
            }}
          />
        </div>
        {/* 显示 簿记新增页面 */}
        <div style={{ display: shareOptionVisible ? 'block' : 'none', height: '100%' }}>
          {shareOptionVisible ? (
            <ShareOption
              onBack={this.onBack}
              showShareOption={this.showShareOption}
              onRef={(ref) => {
                this.$shareOption = ref;
              }}
              type={operateType}
              bundleId={operateType == 1 ? '' : bundleId}
            />
          ) : (
            ''
          )}
        </div>
      </div>
    );
  }
}
export default ShareOptionMain;
